<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../react18/react.development.js"></script>
    <script src="../react18/react-dom.development.js"></script>
    <script src="../react18/babel.min.js"></script>
</head>
<body>
    <div id="app"> </div>
<!-- 如果需要bable对当前的script内部的jsx编译,则需要设置script的type属性 -->
    <script type="text/babel">
        // jsx语法1：
        // 1、虚拟DOM中要混入js表达式，要用{},{}中只能写变量或者表达式,不能书写语句(表达式有返回值,语句没有返回值)
        // 2、指定样式的类名不要用class，必须用className,指定for属性要用htmlFor(避免元素的自带属性和js的关键字冲突)
        //   --在书写style行内样式的时候,style希望接受的是一个对象格式 所以案例写法:style={{color:"red"}}

            /* 
      jsx语法2:
        - JSX中所有的元素都要闭合
        - JSX语法外层必须有且只有一个外层父元素
        - 标签的首字母
          - 如果是小写,则认为是html提供的标签
          - 如果是大写,则认为是一个组件
        - jsx中注释:{/* <Hello/> ✳/}
        
    */
    const hot = false;
     const vDOM = (
        <div className = 'outer'>
         <h1>jsx</h1>
         <h2>js非常方便</h2>
         <hr />
         <p style ={{color:'red',fontsize:'40px'}}>jsx的行内样式</p>
         <p>今天的天气是{hot?'晴天':'下雨'}</p>
        </div>
     )

    //创建容器并渲染虚拟DOM
    ReactDOM.createRoot(document.getElementById('app')).render(vDOM)
    </script>
</body>
</html>